package com.iris.live.services.data.models;

import javax.persistence.*;
import java.math.BigDecimal;
import java.sql.Timestamp;
import java.util.Date;

/**
 * Created by HangLiu on 2017/4/1.
 */
@Entity
@Table(name = "lsh保险申请表附属_详细", schema = "live", catalog = "")
public class Lsh保险申请表附属详细Model {
    private Integer id;
    private String 许可;
    private String 初始报价单号;
    private String 第N年;
    private String 类型;
    private String 批单号;
    private Date 批单日期;
    private Date 保单终止日期;
    private Date 退保日期;
    private String 商业险保单号;
    private String 交强险保单号;
    private Date 交强险开始日期;
    private Date 交强险结束日期;
    private Date 商业险开始日期;
    private Date 商业险结束日期;
    private String 退保备注;
    private String 更新账号;
    private Timestamp 更新时间;
    private String 批单类型;
    private BigDecimal endorsementMoney;  //批单金额
    private BigDecimal poundage;  // 手续费

    @Id
    @Column(name = "id")
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    @Basic
    @Column(name = "许可")
    public String get许可() {
        return 许可;
    }

    public void set许可(String 许可) {
        this.许可 = 许可;
    }

    @Basic
    @Column(name = "初始报价单号")
    public String get初始报价单号() {
        return 初始报价单号;
    }

    public void set初始报价单号(String 初始报价单号) {
        this.初始报价单号 = 初始报价单号;
    }

    @Basic
    @Column(name = "第N年")
    public String get第N年() {
        return 第N年;
    }

    public void set第N年(String 第N年) {
        this.第N年 = 第N年;
    }

    @Basic
    @Column(name = "类型")
    public String get类型() {
        return 类型;
    }

    public void set类型(String 类型) {
        this.类型 = 类型;
    }

    @Basic
    @Column(name = "批单号")
    public String get批单号() {
        return 批单号;
    }

    public void set批单号(String 批单号) {
        this.批单号 = 批单号;
    }

    @Basic
    @Column(name = "批单日期")
    public Date get批单日期() {
        return 批单日期;
    }

    public void set批单日期(Date 批单日期) {
        this.批单日期 = 批单日期;
    }

    @Basic
    @Column(name = "保单终止日期")
    public Date get保单终止日期() {
        return 保单终止日期;
    }

    public void set保单终止日期(Date 保单终止日期) {
        this.保单终止日期 = 保单终止日期;
    }

    @Basic
    @Column(name = "退保日期")
    public Date get退保日期() {
        return 退保日期;
    }

    public void set退保日期(Date 退保日期) {
        this.退保日期 = 退保日期;
    }

    @Basic
    @Column(name = "商业险保单号")
    public String get商业险保单号() {
        return 商业险保单号;
    }

    public void set商业险保单号(String 商业险保单号) {
        this.商业险保单号 = 商业险保单号;
    }

    @Basic
    @Column(name = "交强险保单号")
    public String get交强险保单号() {
        return 交强险保单号;
    }

    public void set交强险保单号(String 交强险保单号) {
        this.交强险保单号 = 交强险保单号;
    }

    @Basic
    @Column(name = "交强险开始日期")
    public Date get交强险开始日期() {
        return 交强险开始日期;
    }

    public void set交强险开始日期(Date 交强险开始日期) {
        this.交强险开始日期 = 交强险开始日期;
    }

    @Basic
    @Column(name = "交强险结束日期")
    public Date get交强险结束日期() {
        return 交强险结束日期;
    }

    public void set交强险结束日期(Date 交强险结束日期) {
        this.交强险结束日期 = 交强险结束日期;
    }

    @Basic
    @Column(name = "商业险开始日期")
    public Date get商业险开始日期() {
        return 商业险开始日期;
    }

    public void set商业险开始日期(Date 商业险开始日期) {
        this.商业险开始日期 = 商业险开始日期;
    }

    @Basic
    @Column(name = "商业险结束日期")
    public Date get商业险结束日期() {
        return 商业险结束日期;
    }

    public void set商业险结束日期(Date 商业险结束日期) {
        this.商业险结束日期 = 商业险结束日期;
    }

    @Basic
    @Column(name = "退保备注")
    public String get退保备注() {
        return 退保备注;
    }

    public void set退保备注(String 退保备注) {
        this.退保备注 = 退保备注;
    }

    @Basic
    @Column(name = "更新账号")
    public String get更新账号() {
        return 更新账号;
    }

    public void set更新账号(String 更新账号) {
        this.更新账号 = 更新账号;
    }

    @Basic
    @Column(name = "更新时间")
    public Timestamp get更新时间() {
        return 更新时间;
    }

    public void set更新时间(Timestamp 更新时间) {
        this.更新时间 = 更新时间;
    }

    @Basic
    @Column(name = "批单类型")
    public String get批单类型() {
        return 批单类型;
    }

    public void set批单类型(String 批单类型) {
        this.批单类型 = 批单类型;
    }

    // 批单金额
    @Basic
    @Column(name = "endorsementMoney")
    public BigDecimal getEndorsementMoney() {
        return endorsementMoney;
    }

    public void setEndorsementMoney(BigDecimal endorsementMoney) {
        this.endorsementMoney = endorsementMoney;
    }

    // 手续费
    @Basic
    @Column(name = "poundage")
    public BigDecimal getPoundage() {
        return poundage;
    }

    public void setPoundage(BigDecimal poundage) {
        this.poundage = poundage;
    }



    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;

        Lsh保险申请表附属详细Model that = (Lsh保险申请表附属详细Model) o;

        if (id != null ? !id.equals(that.id) : that.id != null) return false;
        if (许可 != null ? !许可.equals(that.许可) : that.许可 != null) return false;
        if (初始报价单号 != null ? !初始报价单号.equals(that.初始报价单号) : that.初始报价单号 != null) return false;
        if (第N年 != null ? !第N年.equals(that.第N年) : that.第N年 != null) return false;
        if (类型 != null ? !类型.equals(that.类型) : that.类型 != null) return false;
        if (批单号 != null ? !批单号.equals(that.批单号) : that.批单号 != null) return false;
        if (批单日期 != null ? !批单日期.equals(that.批单日期) : that.批单日期 != null) return false;
        if (保单终止日期 != null ? !保单终止日期.equals(that.保单终止日期) : that.保单终止日期 != null) return false;
        if (退保日期 != null ? !退保日期.equals(that.退保日期) : that.退保日期 != null) return false;
        if (商业险保单号 != null ? !商业险保单号.equals(that.商业险保单号) : that.商业险保单号 != null) return false;
        if (交强险保单号 != null ? !交强险保单号.equals(that.交强险保单号) : that.交强险保单号 != null) return false;
        if (交强险开始日期 != null ? !交强险开始日期.equals(that.交强险开始日期) : that.交强险开始日期 != null) return false;
        if (交强险结束日期 != null ? !交强险结束日期.equals(that.交强险结束日期) : that.交强险结束日期 != null) return false;
        if (商业险开始日期 != null ? !商业险开始日期.equals(that.商业险开始日期) : that.商业险开始日期 != null) return false;
        if (商业险结束日期 != null ? !商业险结束日期.equals(that.商业险结束日期) : that.商业险结束日期 != null) return false;
        if (退保备注 != null ? !退保备注.equals(that.退保备注) : that.退保备注 != null) return false;
        if (更新账号 != null ? !更新账号.equals(that.更新账号) : that.更新账号 != null) return false;
        if (更新时间 != null ? !更新时间.equals(that.更新时间) : that.更新时间 != null) return false;
        if (批单类型 != null ? !批单类型.equals(that.批单类型) : that.批单类型 != null) return false;
        if (endorsementMoney != null ? !endorsementMoney.equals(that.endorsementMoney) : that.endorsementMoney != null) return false;
        if (poundage != null ? !poundage.equals(that.poundage) : that.poundage != null) return false;
        return true;
    }

    @Override
    public int hashCode() {
        int result = id != null ? id.hashCode() : 0;
        result = 31 * result + (许可 != null ? 许可.hashCode() : 0);
        result = 31 * result + (初始报价单号 != null ? 初始报价单号.hashCode() : 0);
        result = 31 * result + (第N年 != null ? 第N年.hashCode() : 0);
        result = 31 * result + (类型 != null ? 类型.hashCode() : 0);
        result = 31 * result + (批单号 != null ? 批单号.hashCode() : 0);
        result = 31 * result + (批单日期 != null ? 批单日期.hashCode() : 0);
        result = 31 * result + (保单终止日期 != null ? 保单终止日期.hashCode() : 0);
        result = 31 * result + (退保日期 != null ? 退保日期.hashCode() : 0);
        result = 31 * result + (商业险保单号 != null ? 商业险保单号.hashCode() : 0);
        result = 31 * result + (交强险保单号 != null ? 交强险保单号.hashCode() : 0);
        result = 31 * result + (交强险开始日期 != null ? 交强险开始日期.hashCode() : 0);
        result = 31 * result + (交强险结束日期 != null ? 交强险结束日期.hashCode() : 0);
        result = 31 * result + (商业险开始日期 != null ? 商业险开始日期.hashCode() : 0);
        result = 31 * result + (商业险结束日期 != null ? 商业险结束日期.hashCode() : 0);
        result = 31 * result + (退保备注 != null ? 退保备注.hashCode() : 0);
        result = 31 * result + (更新账号 != null ? 更新账号.hashCode() : 0);
        result = 31 * result + (更新时间 != null ? 更新时间.hashCode() : 0);
        result = 31 * result + (批单类型 != null ? 批单类型.hashCode() : 0);
        result = 31 * result + (endorsementMoney != null ? endorsementMoney.hashCode() : 0);
        result = 31 * result + (poundage != null ? poundage.hashCode() : 0);
        return result;
    }
}
